/*
 * Grupo: Dayana Souza Silva, Filipe Pires Guimaraes, Rafael Vieira Falcao
 * Mat.: 11211111, 113110873, 113111111
 */

package bolao.projeto.lp2;

import org.junit.*;

public class TestaJogador {
	private Jogador jogador;
	
	@Before
	public void criaObjetos() throws Exception{
		jogador = new Jogador("ronaldo10", "ronaldo10@email.com", "12345");
	}
	
	@Test
	public void testaCriaJogador() throws Exception{
		try {
			new Jogador("", "ronaldo10@email.com", "12345");
			Assert.fail("Esperava excecao, login nao pode ser vazio");
		} catch (Exception e) {
			Assert.assertEquals("Mensagem errada",
								"login nao pode ser vazio.",
								e.getMessage());
		}
		
		try {
			new Jogador("ronaldo10", "", "12345");
			Assert.fail("Esperava excecao, email nao pode ser vazio");
		} catch (Exception e) {
			Assert.assertEquals("Mensagem errada",
								"Email nao pode ser vazio.",
								e.getMessage());
		}
		
		try {
			new Jogador("ronaldo10", "ronaldo10@email.com", "");
			Assert.fail("Esperava excecao, senha nao pode ser vazio");
		} catch (Exception e) {
			Assert.assertEquals("Mensagem errada",
								"Senha nao pode ser vazia e deve ter entre 4 a 8 caracteres",
								e.getMessage());
		}
		
		try {
			new Jogador("ronaldo10", "ronaldo10@email.com", "123");
			Assert.fail("Esperava excecao, senha nao pode ter menos que 4 caracteres");
		} catch (Exception e) {
			Assert.assertEquals("Mensagem errada",
								"Senha nao pode ser vazia e deve ter entre 4 a 8 caracteres",
								e.getMessage());
		}
		
		try {
			new Jogador("ronaldo10", "ronaldo10@email.com", "123456789");
			Assert.fail("Esperava excecao, senha nao pode ter mais que 8 caracteres");
		} catch (Exception e) {
			Assert.assertEquals("Mensagem errada",
								"Senha nao pode ser vazia e deve ter entre 4 a 8 caracteres",
								e.getMessage());
		}
	}
	
	@Test
	public void TestaGettersSetters() throws Exception{
		Assert.assertTrue(jogador.getLogin() == "ronaldo10");
		jogador.mudarLogin("ronaldo11");
		Assert.assertTrue(jogador.getLogin() == "ronaldo11");
		
		Assert.assertTrue(jogador.getEmail() == "ronaldo10@email.com");
		jogador.mudarEmail("ronaldo11@email.com");
		Assert.assertTrue(jogador.getEmail() == "ronaldo11@email.com");
		
		Assert.assertTrue(jogador.getSenha() == "12345");
		jogador.mudarSenha("54321");
		Assert.assertTrue(jogador.getSenha() == "54321");
	}
	
}
